arXiv:2106.02114v1  [cs.CC]  3 Jun 2021
Winning the War by (Strategically) Losing Battles: Settling the
Complexity of Grundy-Values in Undirected Geography
Kyle W. Burke
Plymouth State
kwburke@plymouth.edu
Matthew T. Ferland
USC
mferland@usc.edu
Shang-Hua Teng∗
USC
shanghua@usc.edu
June 7, 2021
Abstract
We settle two long-standing complexity-theoretical questions—open since 1981 and 1993—in
combinatorial game theory (CGT).
We prove that the Grundy value (a.k.a. nim-value, or nimber) of Undirected Geography
is PSPACE-complete to compute. This exhibits a stark contrast with a result from 1993 that
Undirected Geography is polynomial-time solvable. By distilling to a simple reduction, our
proof further establishes a dichotomy theorem, providing a “phase transition to intractability”
in Grundy-value computation, sharply characterized by a maximum degree of four: The Grundy
value of Undirected Geography over any degree-three graph is polynomial-time computable,
but over degree-four graphs—even when planar & bipartite—is PSPACE-hard. Additionally,
we show, for the ﬁrst time, how to construct Undirected Geography instances with Grundy
value ∗n and size polynomial in n.
We strengthen a result from 1981 showing that sums of tractable partisan games are PSPACE-
complete in two fundamental ways. First, since Undirected Geography is an impartial rule-
set, we extend the hardness of sums to impartial games, a strict subset of partisan. Second,
the 1981 construction is not built from a natural ruleset, instead using a long sum of tailored
short-depth game positions. We use the sum of two Undirected Geography positions to
create our hard instances. Our result also has computational implications to Sprague-Grundy
Theory (1930s) which shows that the Grundy value of the disjunctive sum of any two impartial
games can be computed—in polynomial time—from their Grundy values. In contrast, we prove
that assuming PSPACE ̸= P, there is no general polynomial-time method to summarize two
polynomial-time solvable impartial games to eﬃciently solve their disjunctive sum.
∗Supported by the Simons Investigator Award for fundamental & curiosity-driven research and NSF grant CCF-
1815254.
0

1
Introduction
Knowing how to win battles does not always translate into knowing how to win wars. More often
than not, the victor must strategically lose some winnable battles in order to win the war. This
timeless principle is elegantly captured in the celebrated Sprague-Grundy Theory about impartial
games from the 1930’s in combinatorial game theory (CGT) [37, 20, 3]. This theory introduces the
concept of the Grundy value, and uses it—together with Bouton’s constructive theory [6] on Nim1—
to characterize the winning strategy for the disjunctive sum of multiple “battleﬁeld” games. In this
paper, we resolve a long-standing complexity-theoretical question—open since 1981—concerning
the computational complexity of strategic losing for the goal of winning the overall sum game
(the disjunctive sum). As the main technical result of this paper, we settle another question in
CGT—open since 1993—on the complexity barrier of Grundy values of a well-studied impartial
graph-theoretical ruleset. Our theoretical work has also inspired new practical board games.
1.1
Games of Games: Disjunctive Sum
A combinatorial game is deﬁned by a succinct ruleset, specifying the domain of game positions,
and for each position, the set of feasible options each player can move the game to [3, 1, 35, 21].
A ruleset is impartial if both players have the same options at every position. Games that aren’t
impartial are known as partisan. In the normal-play setting, two players take turns advancing the
game, and the player who is forced to start their turn on a terminal position—a position with
no feasible options—loses the game. We combine the challenges of deciding the winnability and
selecting a winning move (whenever one is available) into one term: strategic determination. (See
also [16] for integrating the two tasks). If the player with a winning strategy can consistently solve
the strategic determination problem, then they can play the game optimally and win.
For computational analysis, a size is associated with each game position—e.g. of bits encoding
Nim—as the basis for measuring complexity [34, 16, 30, 7]. The size measure is assumed to be
natural 2. with respect to the key components of the ruleset. In particular, at each position with
size n: (1) the space of feasible options can be identiﬁed in time polynomial in n, and (2) all positions
reachable from the position have size upper-bounded by a polynomial function in n. An impartial
ruleset is said to be polynomial-time solvable—or simply, tractable—if there is a polynomial-time
algorithm for its strategic determination. Multiple games can be combined into a new game:
Deﬁnition 1.1 (Disjunctive Sum). For any two combinatorial games G and H (respectively, of
rulesets R1 and R2), their disjunctive sum, G + H, is a game in which the next player chooses to
make a move in exactly one of G and H, leaving the other alone. A sum game G + H is terminal
if and only if both G and H are terminal according to their own rulesets. Recursively then, in a
sum of three or more, the current player still chooses to move in exactly one of the components.
1.2
Outstanding Computational Questions About Sprague-Grundy Theory
In 1981, Morris [29] proved that the sum of tractable partisan games can be PSPACE-hard. His
theorem elegantly encapsulates the fundamental intricacy of strategic interaction among (simple)
1A Nim game starts with a collection of piles of items. Two (or multiple players) takes turns picking at least one
items from one of the piles. Under normal play, the player taking the last items wins the game. Nim was known in
ancient China as Jian Shi Zi (picking pebbles).
2In other words, the naturalness assumption rules out rulesets with embedded hard-to-compute predicate like—as
a slightly dramatized illustration—“If Riemann hypothesis is true, then the feasible options of a position include
removing an item from the last Nim pile.”
1

games (even for introductory textbooks to the ﬁeld [1]). Morris generates lists of individually-
tractable partisan games that combine to create an intractable sum. It is used as a starting point
for other stronger versions of the proof, such as limiting the games to be depth 2 [42] and limiting
the number of branches for each game to 3 [26]. A further adaptation is made to show that Go
Endgames are PSPACE-hard [40]. Morris’ theorem also provides a framework for understanding
other families of combinatorial games.
One important basic question has remained open since
Morris’ construction:
Open Question 1 (Sum of Impartial Games). Can the disjunctive sum of two (or more) polynomial-
time solvable impartial games become intractable?
This open question is fundamentally connected with Sprague-Grundy theory, a seminal part
of CGT. Formulated in 1930s, this theory provides a mathematical characterization for impartial
games and their sum [37, 20], laying the foundation for modern CGT [10, 3]. We now highlight two
fundamental aspects of this beautiful theory (and provide the background of our own work):
Concise Mathematical Summary of Impartial Games: Playing combinatorial games opti-
mally usually requires deep strategic reasoning about long alternation down the last level of their
game trees. Remarkably, Sprague and Grundy showed that the essence of every impartial game
can be distilled into an “equivalent” single-pile Nim game. Its Grundy value (a.k.a. nim-value
or nimber) is then the number of items in the equivalent single-pile Nim. The nim-value extends
winnability: the current player has a winning strategy if and only if the Grundy value is not equal
zero. To win, it is suﬃcient to choose any feasible option with value zero. The Grundy value of a
game provides a succinct mathematical summary of its game tree, whose size could be exponential
in the number of options: the Grundy value is always bounded above by the number of options.
Systematic Framework for Combining Games: Sprague and Grundy’s pioneering theory
establishes a systematic framework not only for combining games across diﬀerent rulesets, but also
for a complete characterization of strategic interaction among games in the overall sum, based only
on their concise summaries [3, 10]. Combined with Bouton’s theory on Nim [6] (see Appendix A
for a description of Nim and how to solve it in polynomial time), letting ⊕denote the bitwise xor
(the nim-sum), the theory establishes:
nimber(G + H) = nimber(G) ⊕nimber(H)
∀impartial G, H
(1)
In general, losing a winnable game may be necessary to win in the overall sum (true to the
meaning of “losing a battle but winning the war”). Sprague Grundy theory contains a profound
computational statement, made prior to the inception of P vs NP. Because the nim-sum is linear-
time computable, if the Grundy values of the games are tractable, then the Grundy value—hence
the winnability—of the overall sum game is also tractable. This contrasts with some values in
partisan games, as exploited by Morris [29], where he constructs a CGT representation for each
component, but proves one is unable to “add them up” in polynomial time (unless P = PSPACE).
The following open question is intrinsically connected with Open Question 1.
Open Question 2. Can the information captured in the Grundy value of an impartial game be
more expensive to compute than its strategic determination?
Our research has been inﬂuenced by the following two tightly related yet subtly diﬀerent formu-
lations concerning the algorithmic connection between Grundy values and strategic determination.
Open Question 3 (Tractable Structures). For any ruleset, does polynomial-time strategic deter-
mination imply polynomial-time Grundy-value computation?
2

Open Question 4 (Eﬃcient Reduction). Is there a general polynomial-time reduction from Grundy-
value computation to strategic determination?
These last two questions are directly related - a YES answer to the second aﬃrms the ﬁrst
(and thus a NO answer to the ﬁrst also refutes the second.) An eﬃcient solution for these two
would also provide a uniﬁed algorithm—based on Sprague-Grundy theory—for eﬃciently solving
the disjunctive sum of tractable impartial games (and hence Open Question 1).
On the tractable spectrum, some polynomial-time solvable rulesets—including Nim, Subtrac-
tion Game [3], and many others—have dual tractability: their Grundy values are also polynomial-
time computable. Open Question 3 focuses on whether strategic determination and Grundy values
have common underlying mathematical structures for tractability beyond the fact that both can be
obtained by evaluating the game tree [3]. This is relevant to the part of Fraenkel’s work [16], where
he conceptualized a class called games with an eﬃcient strategy by combining the tractability of
their own strategic determination with the tractability of their involvements in disjunctive sums
and in misère-play (that is, the current player wins at any terminal position).
On the intractable spectrum, for any PSPACE-complete game with polynomial game-tree
height—e.g., Node-Kayles [34], Generalized Geography [34, 23], Col [10, 2] and many games
based on logic, topology, network sciences, etc, [34, 9, 36, 19, 8]—the answer to the second question
is always a YES. However, this complexity-theoretical polynomial-time reduction is not extendable
from PSPACE-complete games to games with potentially lower complexity. In addition to tractable
games, it remains open whether a polynomial-time reduction from Grundy values to strategic de-
termination exists for intractable impartial games, whose complexity might be “strictly” in-between
NP and PSPACE.3 Open Question 4 hypothesizes whether a uniﬁed algorithmic approach exists
for Grundy-value computation using winnability testing & winning-move ﬁnding as subroutines.
As Fraenkel pointed out, winnability alone may not capture the whole picture of game’s
tractability [16]. Recent progress on Poset games [36]4 highlights that aspect as well. It is well-
known—by strategy-stealing—that the ﬁrst player has a winning strategy in any Poset game where
the underlying poset has a greatest element (e.g. in Chomp), providing straightforward answer to
winnability.
On the other hand, Bodwin and Grossman [4] prove that in this family, ﬁnding
a winning move can be PSPACE-complete.
Hence even in this special case, the Grundy-value
and strategic determination are polynomial-time reducible to each other. The implication on the
nimber-winnability complexity separation also has a caveat. Poset games with the greatest ele-
ment may have reachable game positions without the greatest element: playing these special games
requires later moves on “normal” Poset games, outside the greatest-element family. Indeed, Grier
[19] proves that deciding winnability of normal Poset games is PSPACE-complete.
1.3
Battles of Geography Without Directions: A Concrete Open Question
As a game version of the Seven Bridges of Königsberg, Geography grew from a real-world “Word
Chain” game—with cities as the category—into an abstract game on graphs, as suggested by
Richard Karp [34]. This game, known as Generalized Geography, became the main subject
for complexity study in the landmark paper, “GO is polynomial-space hard” (1978) by Lichtenstein
and Sipser [23]. In this impartial game, a position is deﬁned by a directed graph and a speciﬁed
3Is there a polynomial-time nimber-to-winnability reduction for impartial games—arising in quantum combinatory
game theory [7]—for which strategic determination is complete for a particular level of the polynomial-time hierarchy?
4A Poset game is a two-player impartial game over a partially ordered set (poset), in which each move—the
selection of an element in the poset—removes it together with all elements that are greater.
The Poset game
generalizes the classical “chocolate-eating” game Chomp [43] as well as Nim. A poset with the greatest element is a
poset that contains an element greater than any other element in the poset.
3

node (with the token). During the game, two players take turns moving the token to an outgoing
neighbor and removing the node it just occupied (or otherwise marking it so the token cannot re-
visit any node). In the normal-play setting, the player who cannot make a move on their turn loses
the game. Generalized Geography was originally shown to be PSPACE-complete by Schaefer
[34]; this was improved by Lichtenstein and Sipser [23] to be PSPACE-complete, even when the
graph is planar, bipartite, and has a maximum degree of three. These graph properties are essential
to their analysis of Go, whose game board is a 2D grid.
In 1993, Fraenkel, Scheinerman, and Ullman [17] added a new twist. They proved that Undi-
rected (Vertex) Geography—the special case over undirected graphs—is polynomial-time
solvable. In 2015, Renault and Schmidt [32] revitalized interest in Undirected Geography by
showing that it’s PSPACE-complete under misère-play instead of normal play. Both the edge vari-
ant [17] and short version [27] of Undirected Geography are also shown to PSPACE-complete.
Various extensions to Undirected Geography has been analyzed [38, 5, 25].
The Fraenkel-Scheinerman-Ullman solution is guided by an elegant matching theory and sup-
ported by eﬃcient matching algorithms (see Appendix B). For any undirected graph G = (V, E) and
s ∈V satisfying E ̸= ∅, the current player has a winning strategy at Undirected Geography
position (G, s) if and only if s is in every maximum matching of G.
However, this matching-
based characterization appears to be limited to winnability. Whether or not the Grundy value of
Undirected Geography is polynomial-time computable had been elusive.
Open Question 5 (Tractable or Intractable). Is the Grundy value for Undirected Geography
computable in polynomial-time?
Undirected Geography has thus become an exemplary tractable impartial game for which
no eﬃcient algorithm had been discovered for its Grundy-value computation.
Others such as
Moore’s Nim [28, 3] and Wythoff’s game [41] are also wonderful examples [16].
1.4
Our Contributions
In this paper, we settle these open questions.
A Dichotomy Theorem on Grundy Values: As our main technical result, we prove that
computing the Grundy value of Undirected Geography is PSPACE-complete. The key step is
to impose a direction over undirected edges, where game paths can travel across in either direction.
The complexity analysis has another intricacy - the polynomial-time winnability is an obstacle.
By distilling our original complex construction into a simpler reduction using Lichtenstein-
Sipser, we are able to establish a dichotomy theorem [33]—in Section 3—providing a “phase transi-
tion to intractability” in Grundy-value computation, sharply characterized by a maximum degree
of four:
Theorem 1.1 (Geographical Dichotomy). The Grundy value of Undirected Geography over
degree-three graphs is polynomial-time computable but over degree-four graphs—even when planar
& bipartite—is PSPACE-hard.
In our polynomial-time Grundy-value algorithm for degree-three, the Fraenkel-Scheinerman-
Ullman algorithm [17] is applied to navigate a branch-and-bound process for evaluating game trees.
Strategic Losing is Hard: Our proof also show that distinguishing ∗or ∗2 in Undirected
Geography is PSPACE-hard, a detail crucial in our next theorem solving Open Question 1:
Theorem 1.2 (Strategic Synergy). The disjunctive sum of two tractable impartial games—in par-
ticular the sum of two Undirected Geography games—can be PSPACE-hard to solve.
4

Our result strengthens Morris’ 1981 result [29] in two fundamental aspects. First, we extend the
PSPACE-hardness from the sum of partisan games to the sum of impartial games, shedding new
light on the computational facet of the Sprague-Grundy characterization (more below). Second,
Morris’ construction is built from a long sum of tailored short-depth game positions. In contrast,
we use two games of a natural, well-studied Undirected Geography impartial ruleset to create
our hard sum. Our construction is in fact robust: In our PSPACE-hard sum, one of the games—
provided with non-zero Grundy value—can even be arbitrarily chosen, say by an adversary.
Sprague-Grundy provides a barrier against closely mimicking Morris’ construction in the realm
of impartial games. Since nim sums are eﬃciently computable, one cannot present a long list of
shallow impartial games where the winnability of the sum is intractable. We overcame this obstacle
by instead summing two positions where the individual Grundy values (of at least one) are diﬃcult
to discern. We are curious whether there is a well-known, tractable, strictly-partisan ruleset where
determining the winnability of the sum of two positions is computationally hard.
Mathematical-Computational Divergence in Sprague-Grundy Theory:
Our complex-
ity result on this concrete graph game has wider computational implications in connection with
Sprague-Grundy Theory. The sharp contrast between the complexity of strategic determination and
Grundy values in Undirected Geography illustrates fundamental mathematical-computational
divergence in Sprague-Grundy theory. When computational cost is no object, the Grundy values
are eﬀective and concise mathematical summaries of game trees for strategic reasoning in disjunc-
tive sums. However, as we have shown, this elegant mathematical summary could be PSPACE-hard
to obtain, even for polynomial-time solvable games. That is, assuming PSPACE ̸= P, the Grundy
values of combinatorial games capture provably richer and potentially hard-to-compute structures
than just their solvability. In fact, Theorem 1.2 implies a broader impossibility statement:
Theorem 1.3 (Summary). Unless P = PSPACE, there is no general polynomial-time method to
summarize two polynomial-time solvable impartial games to eﬃciently solve their disjunctive sum.
Towards Practical Board Games: In Section 4, we apply Sprague-Grundy theory to resolve the
complexity of several rulesets that generalize Undirected Geography. We ﬁrst show very basic
extensions, including Multi-Token Undirected Geography and Undirected Geography
with Passes. Then we demonstrate the versatility of the result, by showing that Uno Swap, a
minor modiﬁcation of the tractable Uncooperative Uno[11], is PSPACE-complete. These results
have potential applications to the practical design of board games based on Undirected Geogra-
phy, where the real world appreciates games with simple rules and positions, combined with deep
strategic reasoning for winning moves [3, 14, 8]. Thus, the removal of edge directions from Gener-
alized Geography, while also retaining its PSPACE-hard complexity opens up several possibili-
ties. In Section 6, we discuss two further practical extensions using the standard GO or Hex game
boards. For example, the web-version of one of our new games, Binary Undirected Geography,
can be played at https://turing.plymouth.edu/~kgb1013/DB/combGames/twoBUG.html.
Graphs with Polynomial-High Undirected Geography Nimbers: In Section 5, we give
a constructive proof that, for any n, there exists a polynomial-sized Undirected Geography
instance with Grundy value n. Logarithmic Grundy values are realizable by trees with recursive
structures, and linear Grundy values can be achieved by directed graphs in Generalized Geog-
raphy. To the best of our knowledge, this is the ﬁrst polynomial Grundy value construction for
Undirected Geography. Using this construction, we prove in Theorem 3.2 that any classiﬁer
for positive Grundy values in Undirected Geography is PSPACE-hard.
5

2
The Value of Games Beyond Winning
In combinatorial game theory, a ruleset deﬁnes not just a single game, but many—possibly inﬁnitely
many—game instances (or positions).
Playing games requires strategic reasoning of one’s own
options as well as opponent’s subsequent options, to answer the key problem on winnability:
Deﬁnition 2.1 (Strategic Determination). Given a game G under a ruleset R, determine whether
or not the current player in G has a winning option, and if YES, return a winning option of G.
This fundamental problem—commonly involving deep alternation—has been the subject of in-
tense mathematical and computational studies [3, 12, 21, 30, 34, 15, 13, 31, 18, 9, 23, 2]. A ruleset
R deﬁnes a natural game tree, capturing this alternation for each of its positions, G, by recursively
branching with feasible options. Thus, the game tree of G contains all reachable positions of G
under ruleset R, with the leaves as the terminal positions.
In the 1930s, Sprague and Grundy independently discovered a deep, yet basic, mathematical
structure underlying impartial games, referred to as “Sprague-Grundy theory”. This foundational
discovery characterizes each impartial game G by a natural number, known as the Grundy value
(a.k.a nim-value or nimber) of the game. Recursively, the Grundy value of G is:
• Terminal Position: If G is terminal, then nimber(G) = 0.
• Non-Terminal Position: If {G1, ..., G∆} is the set feasible options of G, then:
nimber(G) = mex ({nimber(G1), ..., nimber(G∆)})
(2)
where mex is the minimum excluded value, returning the smallest value of
Z+ ∪{0} \ {nimber(G1), ..., nimber(G∆)} .
We will use the notation standard in combinatorial game theory for Grundy values: ∗k for k,
except that ∗is shorthand for ∗1 and 0 is shorthand for ∗0.5
By grouping all positions with non-zero Grundy values into a class called “Fuzzy”, impartial
game positions can be partitioned into two outcome classes, characterizing winnability.
(1) N
(“Fuzzy”) - with positive Grundy values; the current (next) player always has a winning strategy.
(2) P (“Zero”) - with zero Grundy value; the previous player always has a winning strategy.
3
A Dichotomy Theorem
In this section, we prove Theorem 1.1, setting up the Dichotomy Theorem of Grundy-value compu-
tation in Undirected Geography based on the local degree of intersection. Because “Zero” (P)
is polynomial-time distinguishable from “Fuzzy” (N) in Undirected Geography, to establish
the hardness, we need to show that the “Fuzzy” region is PSPACE-hard to classify. By a (rather
involved) reduction from True Quantiﬁed Boolean Formula, we proved that ∗and ∗2 are PSPACE-
hard to distinguish. While aiming for planar graphs, we distilled this construction, ﬁnding a simple
gadget (Figure 1) to obtain a simpler and direct reduction from Generalized Geography. For
readers who may want to see more complex constructions for “direction control” in Undirected
Geography, we refer them to Section 5 on nimber constructability. There, replacing directed edges
is more intricate because high Grundy values cannot be truncated as in the complexity analysis
below, and our attempts to simplify the proof haven’t yet produced the same outcome.
5The reason for the ∗0 = 0 convention is that it is equivalent to the integer zero in CGT.
6

3.1
PSPACE-Complete Grundy Values of Undirected Geography
Theorem 3.1 (Complexity Separation of Winnability and Grundy Values). The Grundy value of
polynomial-time solvable Undirected Geography is PSPACE-hard to compute.
Our reduction, r, takes a Generalized Geography position (G, s) and yields a Undirected
Geography position r(G, s) = (G′, s) where:
(G′, s)
(
= ∗,
if (G, s) = 0 (∈P)
∈N \ {∗},
if (G, s) ∈N
For readers unaccustomed to working with nimbers, we provide another characterization: the
(disjunctive) sum of (G′, s) with a simple ∗yields:
(G′, s) + ∗∈
(
P,
if (G, s) ∈P
N,
if (G, s) ∈N
Thus, the reader can consider the winnability of (G, s) equivalent to (G′, s) + ∗. This is not
diﬃcult to conceptualize: in addition to the resulting Undirected Geography position, we also
include another game with exactly one move shared by both players. Thus, exactly once in the sum,
one of the two players can make the only move in that game instead of moving in Undirected
Geography.
These two characterizations are equivalent, as ∗+ ∗= 0 and, whenever j ≥2,
∗+ ∗j = ∗k where k ≥2.
In Appendix D, we provide proofs using this second winnability
characterization. The reduction itself contains two parts:
1. Modify G so that each vertex v ∈V is given an adjacent singleton vertex, v0, adjacent to no
other vertices. In other words, ∀v ∈V we will add vertex v0 and (undirected) edge (v, v0).
2. For each of the directed edges in G, (x, y), we replace it with the gadget shown in Figure 1.
x
a
a0
b
c
c0
f
d
d0
y
Figure 1: The gadget for each directed edge (x, y).
The correctness of the reduction hinges on this gadget acting like a directed edge from x to y.
We assert that with two lemmas. In this section, we provide proofs using nimber-based calculations.
In Appendix D, we provide alternate proofs based on the winnability when added to ∗. The reader
is welcome to use whichever reasoning they prefer to follow.
We will also use some notation to represent a graph, G, after moves have been made. For a
subset S ⊂V , we will use GS be the graph obtained from G by removing S and all edges incident
to S. Thus, from a position (G, s), if a player chooses to traverse edge (s, t), the resulting position
is (G{s}, t). Since we are often considering sets S with just one vertex, we will shortcut examples
like that by dropping the braces, as (Gs, t).
7

Lemma 3.1 (Wrong Way). Moving from y to any vertex d results in a value of ∗2 or ∗3. In other
words, (G′
y, d) = ∗2 or ∗3.
Proof. We prove this by examining the three options from d. Moving to d0 is clearly a move to 0.
Moving to c will be non-zero, because c0 is zero. It remains to show that moving d →f results in
a ∗-position. We can see this by considering the following necessary move f →b. Since both of b’s
remaining neighbors, a and c, have terminal neighbors (a0 and c0), they are non-zero. Thus, the
move to b must be a zero position, and the move to f must be ∗.
Lemma 3.2 (Correct Way). Moving from d to y results in a value of ∗exactly when moving from
x to a in the same gadget results in ∗.
Proof. In both cases, we will use the fact that moving from b to f results in a 0-position, because
d is always non-zero and it is f’s only neighbor.
For the ﬁrst case, assume that moving d to y results in ∗. This means that moving c to d has
value ∗2, as options to f and d0 are both 0. Thus, b to c has value ∗. Since b has options to both
0 and ∗, moving to b has value ∗2, and moving x to a has value ∗.
In the other case, assume that moving d to y does not have value ∗. (Either it is ∗2 or above or
y has already been removed.) Thus, moving c to d results in a value of ∗, because d’s other options
are 0. b to c then has a value of ∗2, meaning that a to b has a value of ∗. This means that moving
x to a has a value of ∗2 ̸= ∗, completing the proof.
With our reduction and our two lemmas, we can now prove Theorem 3.1.
Proof. Determining the winnability of Generalized Geography position (G, s) is PSPACE-
hard. Thus, it remains to be shown that for the Undirected Geography position resulting from
the reduction, (G′, s)
(
= ∗,
if (G, s) = 0 (∈P)
∈N \ {∗},
if (G, s) ∈N
Consider any Generalized Geography position (H, t), k moves after (G, x) and the analagous
Undirected Geography position (H′, t) = r(H, t), reached 5k moves after (G′, s) by traversing
the gadgets corresponding to the directed edges traversed to reach (H, t). If there are no options
from (H, t), then (H′, t) has options to t0, which has value 0; possibly to gadget vertices d, which
have value either ∗2 or ∗3 by Lemma 3.1; and possibly to gadget vertices a where the corresponding
y vertex has already been removed, which have a non-∗value (speciﬁcally ∗2) by Lemma 3.2.
Thus, there is a move to zero and might be moves to ∗2 or ∗3. (H′, t) = ∗. If there are options
from (H, t), then it is either in P or N. We can complete our proof inductively by assuming that
the theorem is true for all options of (H, t) and showing that it works for (H, t). (1) If (H, t) ∈P,
then each option, (Ht, p) is in N. Thus, by our induction hypothesis, (H′
t, p) = ∗z, where z ≥2.
This means that (H′, t) doesn’t have any options equal to ∗. Since it does have a move to zero (t0),
(H′, t) = ∗. ✓(2) If (H, t) ∈N, then some option, (Ht, p) ∈P. Thus, (H′
t, p) = ∗. Since (H′, t) has
a move to zero (t0) and ∗, the value is ∗z where z ≥2.
Currently our reduction creates positions where the initial value (at (G′, s)) is either ∗or another
nimber higher than 1. We can narrow this down so that the question is whether we can distinguish
between ∗and ∗2, speciﬁcally, by appending a Prelude gadget (see Figure 2) before s and then
asking what the value of the overall game position is when starting at the “start” vertex.
Corollary 3.1. Determining whether an Undirected Geography position equals ∗or ∗2 is
PSPACE-complete, even on bipartite, planar graphs with a maximum degree of four.
8

start
s
Figure 2: Prelude Gadget.
Proof. Since the height of the game tree is at most n, the Grundy-value can be computed in
polynomial-space using the standard DFS technique [30].
Adding our prelude gadget to the reduction from Theorem 3.1, the value at vertex “start” will
either be ∗or ∗2. By calculating the nimber backtracking from the value at s, we see that it will
be ∗exactly when the value at s is ∗, and ∗2 for any of the other values of s.
From Lichtenstein and Sipser [23], we know that the winnability of Generalized Geography
is PSPACE-hard on bipartite, planar graphs with a maximum degree of three.
Our reduction
preserves the planarity, and, since there is no odd-cycle in the gadget, the bipartite property as
well. We increase the degree by one because we add an extra vertex adjacent to the original vertices
in V . Thus, we are still hard on graphs with a maximum degree of four.
The proof above has also established that it is PSPACE-hard to determining whether two
“Fuzzy” games (G1, s1) and (G2, s2) in Undirected Geography has the same Grundy value. In
Section 5.3, we will use our “poly-high nimber constructor” to prove the following theorem, showing
no polynomial-time classiﬁer exists the Grundy values in Undirected Geography, beyond the
well-known “Zero”-“Fuzzy” classiﬁer, unless P = PSPACE.
Theorem 3.2 (Too “Fuzzy” to Classify). In Undirected Geography, determining whether or
not the Grundy value of (G, s), where s has degree ∆, is in any given set S ⊂[∆], is PSPACE-hard.
3.2
Following the Winning Way - A Polynomial-Time Branch-and-Bound
We ﬁrst show that for any undirected graph G with maximum-degree at most three, the Grundy
value of Undirected Geography is polynomial-time computable. In this case, we present a
polynomial-time reduction from the Grundy-value computation to decision of winnability. More
broadly, in Appendix C.1, we generalize this ﬁnding of nimber-winnability reduction abstractly to
impartial games characterized by their degrees and heights. In Appendix C.2, we strengthen the
result by analyzing the impact of high-degree nodes in the process.
For Undirected Geography at a position G = (V, E) and s ∈V , the degree of s in G is
equal to the number of its feasible moves, and hence serves as a tight upper bound on the Grundy
value of the position. Similarly, the maximum degree in G characterizes the maximum branching
factor of the game tree at position (G, s): If the maximum degree of G is ∆, then the branching
factor of every node except the root is at most ∆−1, because the current geography path entering
the node will take away at least one edge incident to the node. The root may have branching factor
∆but no more.
Theorem 3.3 (Following the Winning Way in Undirected Geography). For any undirected
graph G = (V, E) with maximum degree 3, and node s ∈V , the Grundy value at the Undirected
Geography position (G, s) can be computed in polynomial time in n = |V |.
9

Proof. We ﬁrst consider the case when the degree of s is 1 or 2. We then extend to the case of 3.
Single Option: When the degree of s is 1, the Grundy value of Undirected Geography at
(G, s) is ∗if and only if (G, s) is a winning position. So, the Grundy-value can be directly reduced
to the decision of winnability, which has a polynomial-time matching-based solution [17].
Double Options: When the degree of s is 2 (say with neighbors v1 and v2), the maximum
branching factor of the game tree for position (G, s) is 2. Let Gs denote the graph obtained from
G by removing s and edges incidents to s. Then, the position with move to v1 is (Gs, v1) and
with move to v2 is (Gs, v2). Note that the degree of v1 and v2 in Gs is at most 2. We run the
polynomial-time matching-based winnability algorithm to determine whether or not (Gs, v1) and
(Gs, v2) are winning positions in Undirected Geography, and consider the four cases:
1. [“Fuzzy”, “Fuzzy”] - both (Gs, v1) and (Gs, v2) are winning positions: nimber(G, s) = 0.
2. [“Zero”, “Zero”] - both (Gs, v1) and (Gs, v2) are losing positions: nimber(G, s) = ∗.
3. [“Fuzzy”, “Zero”] - (Gs, v1) is a winning position and (Gs, v2) is a losing position:
nimber(G, s) = ∗(3 −nimber(Gs, v1))
4. [“Zero”, “Fuzzy”] - (Gs, v1) is a losing position and (Gs, v2) is a winning position:
nimber(G, s) = ∗(3 −nimber(Gs, v2))
In the last two cases, one of v1 and v2 is 0, and the other has value x = ∗or x = ∗2. By the
mex rule, (G, s) will be the other of those values (∗2 or ∗, respectively) which is exactly 3 −x (or
3 ⊕x), so the above derivation works.
In the ﬁrst two cases, we have found the Grundy value of (G, s) in polynomial time. Crucial
to the tractability, in the last two cases, we reduce the Grundy-value computation of (G, s) to
a single Grundy-value computation of either (Gs, v1) or (Gs, v2). Because Gs has one less node
than G, the depth of the branch-and-bound process is O(n). In total, we made O(n) calls to the
decision-of-winnability algorithm in order to compute the Grundy value of position (G, s).
Three Positions: Finally, we consider the case when the degree of s is three, say with u1, u2,
and u3 as neighbors. The maximum degree in Gs remains at most three. Then:
nimber((G, s)) = mex ({nimber((Gs, u1), nimber((Gs, u2), nimber((Gs, u3)})
Note that ui has degree at most two in Gs, ∀i ∈{1, 2, 3}. Thus, the nimbers of (Gs, ui) can be
computed, by our method above for degree one or two, in polynomial time.
4
Games of Games, Sprague-Grundy Characterization, and
Mathematical-Computational Divergence
Sprague-Grundy theory provides not only a uniﬁed theory for understanding diverse impartial
rulesets, but also an elegant framework for their interactions.
Because for all impartial games
G, H, nimber(G + H) = nimber(G) ⊕nimber(H), the Gurndy value of (G + H) can be reduced in
polynomial-time to the Grundy values of G and H. In contrast, using our complexity result for
Undirected Geography, we strengthen Morris’ theorem [29] from partisan to impartial games:
Theorem 4.1 (Beyond Winning Impartial Games). If P ̸= PSPACE, then the disjunctive sum of
two polynomial-time tractable impartial games can be intractable.
10

Thus, unlike Grundy-value computation, there is no general polynomial-time reduction algo-
rithm from winnability of (G + H) to strategic determination for G and H, unless P = PSPACE.
This illustrates a striking view of the classical Sprague-Grundy characterization through the lens of
computational complexity theory. The Grundy value and strategic determination are two diﬀerent
yet fundamental summaries of the game tree. Using the complexity gulf between P and PSPACE,
our results help to demonstrate that the Grundy value is a signiﬁcantly richer summary of game
data than strategic determination. In fact, our results have established the following:
Theorem 4.2 (Intractability of Game Summary). Unless P = PSPACE, there is no general
polynomial-time method to summarize two given impartial games (say G and H) to eﬃciently
solve the game of their sum (G + H).
Sprague-Grundy theory established that such concise summaries—in the form of Grundy values—
of game data always exist when computational cost is no object. This work highlights a subtle yet
fundamental contrast between the mathematical facet and computational facet of combinatorial
game theory. Applying Sprague-Grundy theory, our dichotomy theorem also enables us to settle
the solvability of several families of games extending Undirected Geography.
• Multi-Field Undirected Geography - The disjunctive sum of two or more of Undi-
rected Geography games.
• Multi-Token Undirected Geography - Like Undirected Geography, this game is
played on an undirected graph, in which a game position is deﬁned by a graph G = (V, E) and
a set S ⊂V . Each node in S has a token, and in each turn, exactly one of the tokens can be
moved to an adjacent unoccupied node, and the node of its previous location is removed from
the graph. In Multi-Token Undirected Geography, alternating moves by two players
create multiple node-disjoint exploring paths in G, one by each token. The game ends when
no valid extension exists to any of these paths.
• Undirected Geography with Passes - Another natural extension of a game is to allow
players to pass their turn. Here, for an integer k, we consider Undirected Geography
with k-Total Passes, which is an Undirected Geography game whose feasible moves are
augmented by allowing players to pass their turn, provided that the total number of passes
taken so far (by both players) is less than k.
• Swap Uno - This game is inspired by a generalization of Uno, was shown by Domaine et
al [11] to be in P via reduction to Undirected Geography. In this game, there are two
hands, H1 and H2, which each consist of a set of cards. This is a perfect information game, so
both players may see each other’s hands. Each card has two attributes, a color c and a rank
r and can be represented as (c, r). A card can only be played in the center (shared) pile if the
previous card matches either the c of the current card or the r of the current card. Finally,
for the special part that makes this ”Swap” Uno, either player may, once a game, decide to
use their turn to swap their hand for their opponent’s rather than playing in a pile. Once a
single player swaps, the other player may not swap.
We now prove that, although Undirected Geography is polynomial-time solvable, these
basic extensions of Undirected Geography can be more challenging computationally.
Theorem 4.3 (The War of Geography Battles). Deciding whether or not the current player has
a winning strategy in the sum of two Undirected Geography games, and consequently, in Two-
Token Undirected Geography and Swap Uno games, is PSPACE-complete. Furthermore,
11

Undirected Geography with k-Total Passes is PSPACE-complete to solve for odd k, and
polynomial-time solvable for even k.
Proof. Let’s start with the complexity analysis for solving Undirected Geography with k-
Total Passes. We ﬁrst consider a trivial game, to be referred to as Pass. Each position in Pass
is deﬁned by an integer k. The terminal position is the one with k = 0. For any k > 0, there is a
single move at position k to position k −1. Pass with k = 1 is isomorphic to Nim with a single
pile of one item. In general, the Pass position k is isomorphic to Nim with k piles, each containing
a single item. The Grundy value of Pass at position k is zero if k is even and ∗if k is odd. For
any undirected graph G and positive integer k, Undirected Geography with k-Total Passes
at position ((G, s), k) is isomorphic to the game deﬁned by the disjunctive sum of two battleﬁeld
games: (1) Undirected Geography at position (G, s) and (2) Pass at position k. Therefore:
• When k is odd (e.g., k = 1), by the Sprague-Grundy theory, the Grundy value of position
((G, s), k) is equal to nimber((G, s))⊕∗. Thus, the current player in this game has NO winning
strategy if and only if nimber((G, s)) = ∗in Undirected Geography. We conclude that
the winnability of this game is PSPACE-complete to solve, because deciding whether or not
nimber((G, s)) is equal to ∗(or ∗2) is PSPACE-complete (Theorem 3.2).
• When k is even, the Grundy value of position ((G, s), k) is equal to nimber((G, s)), for which
we can distinguish “Zero” from “Fuzzy” in polynomial time.
We can similarly characterize the complexity of the sum of two Undirected Geography
games: Let G′ be the two-node graph with edge (s′, u′), and let G = (V, E) be an arbitrary
undirected graph with s ∈V . Then, by Sprague-Grundy theory and the fact that nimber((G′, s′)) =
∗, we have: nimber((G, s) + (G′, s′)) = nimber((G, s)) ⊕∗. Thus, determining the winnability of
the disjunctive sum of two Undirected Geography games is PSPACE-complete.
Because the disjunctive sum of two Undirected Geography games is a special case of Two-
Token Undirected Geography, the PSPACE-hardness extends, and, in fact, even when we
require that the underlying graph is connected.
Finally, Swap Uno is the disjunctive sum of Uncooperative Uno and *. In [11], Demaine et
al gave a simple reduction from Uncooperative Uno to Undirected Geography over bipartite
graphs that isomorphically preserves players’ options, setting up their polynomial-time solution.
In Appendix E, we then show that Uno bipartite graphs have the structural property needed to
encode the hard instances for Grundy value computation in Undirected Geography, as required
in our proof for Theorem 3.1. Consequently, the PSPACE-hardness of Swap Uno follows from
that of Undirected Geography with One Pass.
Proof. (of Theorems 4.1and 4.2) Both follow directly from Theorem 4.3 on the PSPACE-hardness
of the disjunctive sum of two Undirected Geography games, and the sum of Nim and Undi-
rected Geography.
Corollary 4.1. Even in a sum where we ﬁx the second game, so long as that game is “Fuzzy”, the
problem is still intractable.
Proof. Using Theorem 3.2, we can simply have an S that is just the Grundy value of the second
game, which means that the problem is a winning one if and only if the nimber is not in S.
On the tractable side, it follows from Theorem 3.3 that:
Corollary 4.2. The sum of any collection of Undirected Geography games over degree-three
graphs are polynomial-time solvable.
12

5
Undirected Geography with Polynomial Grundy Values
A fundamental problem in combinatorial game theory is that of nimber constructability. That is to
say—when specialized to the game of our focus—the question of whether a game of Undirected
Geography can actually have a certain Grundy value (equivalent to determining the habitat for
impartial games), and if it can, whether it can be succinctly encoded. The existence is important
primarily from a pure mathematical standpoint. The succinct encoding is needed for sums of games
with high Grundy values to actually be shown intractable. In Section 5.3, we prove Theorem 3.2
using the (polynomially) succinct encoding of high nimbers to support our complexity analyses.
5.1
Logarithmic Intuition and Polynomial Challenge
The habitat going up to the maximum degree in the graph is simple. We will present it in the next
construction to motivate our more advanced proof.
Observation 5.1 (Logorithmic Nimber in Trees). Through a simple tree structure, one may create
an Undirected Geography position with nimber ∗n, highest degree n, and 2n vertices.
Proof. We can just recursively deﬁne a tree t(n) which has moves to t(n −1), t(n −2) . . . t(0). For
the base case, t(0) is a single isolated vertex, which clearly has Grundy value 0. The size of this
tree is 20 for the base case, and we can inductively assume each of the smaller t(i) have 2i vertices,
so we have 2k+1 be 20 + 21 + · · · + 2k + 1, where the ﬁnal 1 is the new root.
Thus, we can get a poly-log nimber using a polynomial number of vertices (and certainly any
constant nimber, which we will use for gadgets up to ∗3).
The exponential size of the basic construction comes from the fact that we repeat each tree
in each subtree.
This is necessary, since if we attempt to combine the subtrees, being able to
move "back up" those trees could change the Grundy values. Note here that in Generalized
Geography, one can use directed edges to prevent undesired “up” moves to share the lower
nimber nodes. Thus, it is in fact straightforward to achieve nimber n with n + 1 vertices. We
can’t just replace these with our directed-edge gadget from Figure 1, because the inner degree on
those is constant and will prevent us to get arbitrarily large nimbers. We need a more sophisticated
mechanism to get nimbers of any size.
Nn
∗
∗2
Nn−1
∗
∗2
· · ·
∗
N5
∗2
∗
N4
∗2
Figure 3: The overall schema for Nimber Constructability. The value of the position with the token
at Nn is ∗n.
13

Ni
N4
· · ·
Nn
∗3
Ri
Other ∗, ∗2
Pi
∗2 gadget
Mi
∗gadget
Figure 4: Each vertex Ni is connected to all other N-vertices, as well as its own ∗3 gadget, it’s own
∗2 gadget, it’s own ∗gadget, and it’s own Ri vertex (with value 0). Ri is also connected to the Pk
and Mk gadgets where k > i as shown in the following ﬁgures.
Mi
0
∗2
Ni
M(a)
i,5
M(a)
i,4
M(b)
i,4
M(c)
i,4
M(d)
i,4
R4
N4
M(b)
i,5
M(c)
i,5
M(d)
i,5
R5
N5
· · ·
M(a)
i,i−1
M(b)
i,i−1
M(c)
i,i−1
M(d)
i,i−1
Ri−1
Ni−1
Figure 5: A ∗gadget, which has value ∗unless a lower-rank-N vertex is removed. If all of Nk
vertices exist oﬀthe bottom, then moving to any one of them from Rk results in a 0-board (by
Lemma 5.2). This causes the move Mi →M(a)
i,k to be equal to ∗2. Otherwise, one Rk has value 0,
so Mi →M(a)
i,k is a move to ∗, so Mi instead has value ∗3.
14

Pi
0
∗
Ni
P (a)
i,5
P (a)
i,4
P (b)
i,4
P (c)
i,4
P (d)
i,4
P (e)
i,4
P (f)
i,4
R4
N4
P (b)
i,5
P (c)
i,5
P (d)
i,5
P (e)
i,5
P (f)
i,5
R5
N5
· · ·
P (a)
i,i−1
P (b)
i,i−1
P (c)
i,i−1
P (d)
i,i−1
P (e)
i,i−1
P (f)
i,i−1
Ri−1
Ni−1
Figure 6: The ∗2 gadget
5.2
Polynomial-High Nimber Constructability
To attain nimber n, we create n vertices N4, . . . , Nn, which exist in a clique, as in Figure 3. Each
Ni has Grundy value ∗i so long as all Nk with k < i remain. (We will say these vertices have a
lower rank.) We argue that starting with the token on vertex Nn is a ∗n-position. (We do not have
N0, N1, N2, or N3, since we use 0 through ∗3 as mechanisms in our structure to ensure the player
is unable to move “up” in rank.)
After any move from Nn to Nk, we no longer want vertices with higher-rank than k to retain
their nimber value. To attain this, we create ∗and ∗2 gadgets for each Ni, which have their named
values if and only if no vertex of a lower rank has been removed from the graph. As such, a later
move to a higher-rank Ni will have value either ∗or ∗2 instead of ∗i.
We present these designs in Figures 4, 5, and 6 for illustration. In addition to the ﬁgures, we
also include a formal algorithmic formulation in Algorithm 1:
Observation 5.2. The Nimber Generation Algorithm runs in polynomial time.
Proof. By simple observation, each loop has no more than n iterations, and there are never more
than two nested loops. Each line in each loop runs in constant time. The running time, in fact, is
O(n2).
Lemma 5.1 (Grounded). In a game where the only vertices removed are some Ni vertices along
15

Algorithm 1: Nimber Generation Algorithm
if n ≤3 then
Return a tree representation of ∗n with the corresponding start position
end
else
Let the graph we are working on be G = (V, E)
Add vertex N4 and R4 to V
for i = 5 to n do
Add vertices Ni, Mi, Pi, Ri, M(0)
i
, and P (0)
i
to V
Add edges (Ni, Ri), (Mi, M(0)
i
), and (Pi, P (0)
i
) to E
Create tree versions of ∗3 to V and E, and connect Ni to it
for j = 4 to i −1 do
Add vertices P (a)
ij , P (b)
ij , P (c)
ij , P (d)
ij , P (e)
ij , P (f)
ij , M(a)
ij , M(b)
ij , M(c)
ij , and M(d)
ij
to V
Add edges (Pi, P (a)
ij ), (P (a)
ij , P (b)
ij ), (P (a)
ij , P (c)
ij ), (P (c)
ij , P (d)
ij ), and (P (c)
ij , P (e)
ij ) to E
Add edges (P (e)
ij , P (f)
ij )(P (f)
ij , Rj), and (Ni, Nj) to E
(Mi, M(a)
ij ), (M(a)
ij , M(b)
ij ), (M(a)
ij , M(c)
ij ), (M(c)
ij , M(d)
ij ) and (M(d)
ij , Rj) to E
end
Add a tree representation of ∗2 to V and E, and add an edge to Mi to E
Add a tree representations of ∗to V and E, and an edge connect this to Pi
end
Add the tree versions of ∗and ∗2 the edge to N4 to V and E
Return G and starting node Nn
end
with some of their associated Mi and Mip vertices or Pi and Pip vertices, then traversing edge
(Nk, Rk) always results in a move to 0.
Proof. Any move to an M(a)
i,k vertex has nimber at least ∗since it has a move to M(b)
i,k which is 0.
Thus, moving M(c)
i,k from M(d)
i,k results in a 0, so all M(d)
i,k moves from Rk result in ∗. The same is
true of moving from Rk to P (f)
i,k because P (c)
i,k is also non-zero. Since Rk only has ∗-options, it’s
value is zero when moving from Nk.
Lemma 5.2. In a game where the only vertices removed are some Ni vertices along with some of
their associated Mi and Mip vertices or Pi and Pip vertices, then traversing the edge (Rp, Np) is a
move to 0.
Proof. There is a move to ∗3 (and, if p = 4, ∗2 and ∗), moves to Mp and Pp, which both have a
move to 0 by construction, and to various other Ni, which have moves to Ri, which are moves to 0
by Lemma 5.1.
Lemma 5.3 (Skip ∗2). So long as only Ni vertices are removed from the graph, the position
from moving from Nk to Mk has nim-value ∗if and only if no Ni have been removed with i < k.
Otherwise, it is ∗3.
Proof. Consider the result of moving M(d)
i,k →Rk. All moves to other M(d)
j,k vertices are losing moves
as established in Lemma 5.1. There is only a winning move if Nk still exists, so the position at
Rk ̸= 0 iﬀNk still exists. Let’s consider these two cases:
16

(1) If Nk exists, then moving to Rk ̸= 0. Thus, moving to M(d)
i,k yields 0, so moving to M(c)
i,k
yields ∗, and moving to M(a)
i,k yields ∗2. If all Nk exist, then Mi does not have a move to ∗, so it’s
value is ∗from Ni.
(2) On the other hand, if Nk does not exist, then moving to Rk from M(d)
i,k yields 0. Thus,
moving to M(d)
i,k yields ∗, so moving to M(c)
i,k yields 0, and moving to M(a)
i,k yields ∗. Since Mi has
an ∗-option, moving there from Ni now yields a position with value ∗3.
Lemma 5.4 (Skip ∗). So long as only Ni vertices are removed from the graph, a token on Pk has
nim-value ∗2 if and only if no Ni have been removed with i < k. If the value is not ∗2, it is ∗3.
Proof. By the same logic as in Lemma 5.3, we see that Rk has value 0 exactly when Nk no longer
exists. We examine the two cases to complete the proof:
(1) If Nk exists, Rk is non-zero, so moving to P (f)
i,k from above yields 0. Working back up,
moving to P (e)
i,k yields ∗, moving to P (c)
i,k yields ∗2, and moving to P (a)
i,k yields ∗. If these all exist,
then Pi has moves to only 0 and ∗, so it is ∗2.
(2) If some Nk doesn’t exist, Rk is zero, so moving to P (f)
i,k from above yields ∗. Again, working
back up, moving to P (e)
i,k yields 0, moving to P (c)
i,k yields ∗, and moving to P (a)
i,k yields ∗2. Now that
Pi has an ∗2-option, it is instead ∗3 from Ni.
Lemma 5.5. If the token is on Nk, and only Ni vertices with i > k have been removed from the
graph, then the nim-value must be at least ∗4.
Proof. It is trivial for k = 4, since by construction it has moves to 0 through ∗3.
For larger k, they have a move to 0 through Rj (by Lemma 5.1). They also have a move to
∗3 by construction.
The move to Mk is ∗, and the move to Pk is ∗2 by Lemmas 5.3 and 5.4,
respectively.
Lemma 5.6 (Parity). If the only vertices removed are Ni vertices, the token is currently on Nk,
Nj is of lower rank than Nk and is the lowest rank that has been removed, and if there are an odd
number of Np vertices remaining, where Np are higher rank than Nj, then the nim-value of the
game is ∗. If there are an even number of those vertices remaining, then the game has value ∗2.
Proof. We will do this by induction on the number of remaining Np.
Base Cases: If the token is on an Np vertex, when it is the only one remaining, then the value
is ∗, and when there are two Np vertices remaining, then the value is ∗2.
To establish this: Nk has a move to ∗3 by construction, along with moves to Mk and Pk (∗3 by
Lemmas 5.3 and 5.4), a move to Rk, which is a move to 0 by Lemma 5.1, and to any Ni with rank
no more than j, which is at least ∗4 by Lemma 5.5. Thus, there are no moves to ∗and a move to
0, so the value is ∗.
In the case where there is one other Np vertex remaining, we have the exact same analysis, but
there is a move to ∗as well, by the previous base case. Thus, the position has value ∗2.
Inductive Hypothesis: If there are x Np remaining, where x is odd, then the value is ∗, and
if x is even, the value is ∗2.
Inductive Step: If there are x + 1 Np remaining, where x + 1 is odd, then the value is ∗, and
if x + 1 is even, the value is ∗2.
To establish this: by the same argument as in the base cases, there is a move to 0, three moves
to ∗3, and a collection of moves with value at least ∗4. The rest of the moves are to various Np.
By the IH, each of these options have value ∗if x is odd, and value ∗2 if x is even. Thus, if x is
odd, then the value with x + 1 is ∗2, and if x is even, then the value with x + 1 is ∗.
17

Theorem 5.1 (Right Amount of Stars). When the token is on Nn, the resulting game has nim-value
∗n.
Proof. For 0 through ∗3, it clearly works as we just build a tree as described by Observation 5.1.
For larger Grundy values, we have the token on vertex Nn. We will prove this has value ∗n through
induction on the values of a starting token on Ni.
Base Case: As long as the only vertices removed from the graph are Ni vertices, the token on
N4 will have value ∗4.
To establish this: there are moves to ∗, ∗2, and ∗3, each by construction. There is a move to 0
through R4 by Lemma 5.1. The only other available moves are some subset of of the Nj, which by
Lemma 5.6, have value ∗or ∗2.
Inductive Hypothesis: As long as the only vertices removed from the graph are various Ni
vertices where i > k, Nk has value ∗k.
Inductive Step: We need to show that as long as the only vertices removed from the graph
are various Ni vertices where i > k + 1, Nk+1 has value ∗k + 1.
To establish this: Nk+1 has moves to ∗3 and ∗4, by construction, and to Mk+1, Pk+1, Rk+1, all
of N4 through Nk, and some of Nk+2 to Nn. Moves to N4 to Nk are ∗4 to ∗k by induction. The
move to Rk+1 is a move to 0 by Lemma 5.1. The move to Mk+1 is ∗, by Lemma 5.3 since all Nj
remain. The move to to Pk+1 is ∗2, by Lemma 5.4, again since no Nj is removed.
5.3
Complexity Implication
We now use our polynomial-high nimber constructability result to prove Theorem 3.2, establishing
other than the polynomial-time time “Zero”-“Fuzzy” classiﬁer, every classiﬁer of the Grundy values
in Undirected Geography is PSPACE-hard.
Proof. (of Theorem 3.2) Recall that the proof above makes the distinction between ∗and ∗2 to
be PSPACE-hard. We will ﬁrst use this to prove that distinguishing between ∗(k −1) and ∗k is
PSPACE-hard, for any k ≥2.
We prove this by taking a position (G2, v2) that is hard to distinguish between ∗and ∗2. We
introduce a new vertex v3 with moves to its own 0 and ∗and add edge (v3, v2) to create G3. Then
we will create a new vertex v4 with moves to its own 0, ∗, ∗2, and connect (v4, v3) to create G4,
and so on, until we create a vertex vk with moves to its own 0 to ∗k −1, and add edge (vk, vk−1) to
create Gk. These vertices vi and their associated gadgets have size polynomial in i due to Theorem
5.1.
Now, if (G2, v2) = ∗, then (G3, v3) doesn’t have a move to ∗2, so (G3, v3) = ∗2. Similarly,
(G4, v4) = ∗3, (G5, v5) = ∗4, . . . , (Gk, vk) = ∗(k −1). If instead, (G2, v2) = ∗2, then (G3, v3) = ∗3,
because there is a move to ∗2. Likewise, (G4, v4) = ∗4, . . . , (Gk, vk) = ∗k. Thus, it is PSPACE-hard
to distinguish between ∗k and ∗(k −1).
Next, we prove that distinguishing between any ∗k and ∗p is PSPACE-hard. (We will assume
p > k, without loss of generality.) We ﬁrst create a (Gk, vk) where distinguishing ∗k −1 and ∗k is
hard, then add a new vertex vp which has moves to its own 0 to ∗k−1, vk, and ∗k+1 to ∗p−1. We
name this graph G′
p; the position (G′
p, vp) has value ∗p exactly when (Gk, vk) has value ∗k. (G′
p, vp)
has value ∗k otherwise. Thus, it is PSPACE-hard to distinguish between ∗p and ∗k.
Finally, we use this to show that distinguishing between any possible ﬁxed set of Grundy values
is hard. For any possible set S, there must be at least one Grundy value x ∈S and one Grundy
value in y ∈¯S := [∆] \ S. Then, we can, as described above, create a position where it’s PSPACE-
hard to distinguish between ∗x and ∗y. Thus, if one could classify the game to be within that set
of Grundy values, one could solve a PSPACE-hard problem.
18

6
Math Behind Board Games: Theory and Practice
“My experiences also strongly conﬁrmed my previous opinion that the best theory is
inspired by practice and the best practice is inspired by theory.” - Donald E. Knuth [22]
Combinatorial game theory is a fascinating ﬁeld, where simplicity is valued, and both eﬃcient
methods for solving games and intriguing positions for challenging players are appreciated [3, 1, 35,
21]. Indeed, the magic smile on a six-year old’s face when they realize a winning trick (e.g. how to
win two-pile Nim6 as introduced in Math Circle7) is as enchanting as the contemplative gaze [24] of
Chess, Go, and Hex champions. These are the polynomial-time smiles and PSPACE-hard gazes.
In this paper, we have proved that adding a single ‘PASS’—the smallest possible extension—to
Undirected Geography transforms the game from polynomial-time solvable to PSPACE-hard
intractable. And similarly, we showed that giving a single pass to the game of Uncooperative
Uno also had this same transformation from P to PSPACE. Characterizing the complexity impact
of this small change to the ruleset has deepened and expanded our understanding of the founda-
tional concept & characterization in combinatorial game theory. It has also added Multi-Token
Undirected Geography to the collection of PSPACE-hard graph-based impartial games with
simple rulesets.
David Eppstein [14] once eloquently expressed that elegant combinatorial games with simple,
easy to understand & remember rulesets yet intractable complexity are the gold standard for
combinatorial game design. His reason is a computational one: If a ruleset is polynomial-time
solvable, then optimal players can be programmed (or be replaced by an eﬃcient computer pro-
gram); thus intractable rulesets are essential to make competition interesting. Our work suggests
that an additional property that can be meaningful as part of the gold standard. We call this the
“magic expression” property: there is a simple and natural perturbation to an intractable ruleset
that makes it tractable. The transformation from magic smile to pensive gaze can contribute to
the computational-thinking dimension [39] in the pedagogical value of recreational mathematics.
Fittingly, Sprague-Grundy theory—itself a general principle emerged from the polynomial-time
solvable Nim [6]—has led us to the PSPACE-hard perturbation to Undirected Geography, and
a new complexity-theoretical understanding.
Naturally, the aesthetic quality of game boards is subject to individual taste. To us, grid-like
game boards—as those used in Hex, GO, Domineering, Chomp, and Atropos—are attractive.
Most graphs are too complex visually for game boards; we consider this to be one of the practical
challenges, in implementing/popularizing combinatorial games on graphs. Directed edges without
well-recognized patterns can further add to the entropy. On the other hand, simple graphs may
reduce the strategic challenge of the game. This is why the PSPACE-hardness of Two-Token
Undirected Geography and Undirected Geography with Passes provides us with some
excitement.
The removal of edge directions from Generalized Geography, while retaining
its PSPACE-hard complexity without introducing complex rules, opens up several possibilities.
Further, the simplicity of the graph condition in our Dichotomy Theorem (1.1)—thanks also to
the brilliant reduction of Lichtenstein and Sipser—brings us quite close to two-dimensional grids.
Aﬃrmative answers to the following open questions will make these intractable extensions to Undi-
rected Geography more elegant for practical implementation.
6when realizing the fact that Nim with two identical piles is a losing position can be used for ﬁnding a winning
strategy for any two-pile Nim—including the decision to go ﬁrst or second—so that they will never again lose to their
parents.
7https://mathcircles.org/
19

Open Question 6 (Grid-Like Undirected Geography). Can the Grundy value in some version
of (rectangle or hexagon) grid-based Undirected Geography be PSPACE-hard to computed?
We have been investigating whether the “snap-to-grid” result of Lichtenstein and Sipser for GO
can be extended to our case. Meanwhile, inspired by these “intractable” Undirected Geography
extensions, we have started to explore two practical designs, using the standard GO or Hex game
boards. We conclude the paper with a brief discussion about this two games and some theoretical
questions they inspire.
• Binary Undirected Geography: The game is based on Two-Token Undirected Ge-
ography. It can natuarlly be played with standard Go and Hex game sets. “On your turn,
choose one of the empty (gray) nodes adjacent to either the last created black or white node.
That node will become the last of its color.”
We recently implemented this new game and the web-version can be played with following
link. One can play either against another human player (sitting at the same computer) or
some of our AI programs:
https://turing.plymouth.edu/~kgb1013/DB/combGames/twoBUG.html.
We are cautiously optimistic that this simple game is challenging to play optimally. We are
evaluating the optimal starting placements of the two tokens and with hope of ﬁnding the
“snap-to-grid” hardness.
• Navigate the Pass: This game is based on Undirected Geography with Passes.
Although both are PSPACE-hard games, the hardness of the single-pass version appears to
be more brittle than the two-token version in practice. Aiming for a practical design with
rectangle or hexagon grids, we are in an early design stage, trying to characterizing the brittle
patterns.
Consider the position with rectangle of side length n, e.g., the 19 × 19 GO board. Imagine a
white stone is located in grid point (x, y). A player can either add a white stone to an adjacent
grid point of the current stone, or call “PASS”, after which, players can only play the black
stone until all adjacent locations are occupied. Note that, once switched, the game returned
to standard Undirected Geography, and hence the winnability can be determined in
polynomial time by the matching test.
Furthermore, before switching the stone types, if
(x, y) is not in all maximum matchings, then the current player should play “PASS”.
To make the game more robust, we can also play the game by placing stones in cells to expand
the number of neighbors from four to eight, or to play in cells on a hexagon grid (i.e. with
six neighbors). We are still investigating whether or not rectangle grids are tractable for
this design and whether or not the six-point or eight-point star stencil yields a more more
challenging game than the four-point stencil on rectangular grids.
Mathematically, these questions motivate us to look for other graph parameter(s) to capture the
tractable-intractable divide. For example, it is basic that Grundy values on trees in Undirected
Geography can be computed in polynomial time. It is well-known that the treewidth of the n × n
grid is n.
Open Question 7 (Fixed-Parameter Tractablility). Are the Grundy values in Undirected Ge-
ography ﬁxed-parameter tractable in the treewidth of the graph?
20

Note that playing extensions of Undirected Geography on the grid points of hexagon grids
involves nodes with degree at most three. So, Navigate A Pass for this version can be solved
in polynomial time. It remains open whether or not Two-Token Undirected Geography is
tractable.
Open Question 8 (Two Bugs on Cubic Graphs). Is there a polynomial-time algorithm to decide
the winner of Two-Token Undirected Geography over degree-three graphs, or is the game
PSPACE-complete to solve?
We hope the theoretical questions about these simple grids may lead us not only to elegant
practical games but also to something fundamental about computing and mathematical structures.
Earlier we mentioned the distinction between our Undirected Geography result and Morris’,
which provides hardness via a sum of many shallow partisan games. We wonder whether there exists
a partisan analog of our result.
Open Question 9 (Hard Partisan Sum). Does there exist a well-known, strictly-partisan ruleset
such that the winnability of a single instance can be solved in polynomial time, but where the
winnability of a sum of two instances is PSPACE-hard?
References
[1] M. H. Albert, R. J. Nowakowski, and D. Wolfe. Lessons in Play: An Introduction to Combi-
natorial Game Theory. A. K. Peters, Wellesley, Massachusetts, 2007.
[2] Gabriel Beaulieu, Kyle G. Burke, and Éric Duchêne.
Impartial coloring games.
Theoret.
Comput. Sci., 485:49–60, 2013.
[3] Elwyn R. Berlekamp, John H. Conway, and Richard K. Guy. Winning Ways for your Mathe-
matical Plays, volume 1. A K Peters, Wellesley, Massachsetts, 2001.
[4] Greg Bodwin and Ofer Grossman. Strategy-Stealing Is Non-Constructive. In Thomas Vidick,
editor, 11th Innovations in Theoretical Computer Science Conference (ITCS 2020), volume
151 of Leibniz International Proceedings in Informatics (LIPIcs), pages 21:1–21:12, Dagstuhl,
Germany, 2020. Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik.
[5] Jeﬀrey Bosboom, Charlotte Chen, Lily Chung, Spencer Compton, Michael Coulombe, Erik D
Demaine, Martin L Demaine, Ivan Tadeu Ferreira Antunes Filho, Dylan Hendrickson, Adam
Hesterberg, et al. Edge matching with inequalities, triangles, unknown shape, and two players.
Journal of Information Processing, 28:987–1007, 2020.
[6] Charles L. Bouton. Nim, a game with a complete mathematical theory. Annals of Mathematics,
3(1/4):pp. 35–39, 1901.
[7] Kyle Burke, Matthew Ferland, and Shang-Hua Teng. Quantum combinatorial games: Struc-
tures and computational complexity. CoRR, abs/2011.03704, 2020.
[8] Kyle Burke, Matthew Ferland, and Shang-Hua Teng. Transverse wave: an impartial color-
propagation game inspired by social inﬂuence and quantum nim.
CoRR, abs/2101.07237,
2021.
[9] Kyle W. Burke and Shang-Hua Teng. Atropos: A pspace-complete sperner triangle game.
Internet Mathematics, 5(4):477–492, 2008.
21

[10] John H. Conway. On numbers and games (2. ed.). A K Peters, 2001.
[11] Erik D Demaine, Martin L Demaine, Nicholas JA Harvey, Ryuhei Uehara, Takeaki Uno, and
Yushi Uno. Uno is hard, even for a single player. Theoretical Computer Science, 521:51–61,
2014.
[12] Erik D. Demaine and Robert A. Hearn. Playing games with algorithms: Algorithmic combi-
natorial game theory. In Michael H. Albert and Richard J. Nowakowski, editors, Games of
No Chance 3, volume 56 of Mathematical Sciences Research Institute Publications, pages 3–56.
Cambridge University Press, 2009.
[13] Éric Duchêne and Gabriel Renault.
Vertex nim played on graphs.
Theor. Comput. Sci.,
516:20–27, 2014.
[14] D.
Eppstein.
Computational
complexity
of
games
and
puzzles,
2006.
http://www.ics.uci.edu/∼eppstein/cgt/hard.html.
[15] S. Even and R. E. Tarjan. A combinatorial problem which is complete in polynomial space.
J. ACM, 23(4):710–719, October 1976.
[16] Aviezri S Fraenkel. Complexity, appeal and challenges of combinatorial games. Theoretical
Computer Science, 313(3):393–415, 2004.
[17] Aviezri S. Fraenkel, Edward R. Scheinerman, and Daniel Ullman. Undirected edge geography.
Theor. Comput. Sci., 112(2):371–381, 1993.
[18] Masahiko Fukuyama. A nim game played on graphs. Theor. Comput. Sci., 1-3(304):387–399,
2003.
[19] Daniel Grier. Deciding the winner of an arbitrary ﬁnite poset game is pspace-complete. In
Proceedings of the 40th International Conference on Automata, Languages, and Programming
- Volume Part I, ICALP’13, page 497–503, Berlin, Heidelberg, 2013. Springer-Verlag.
[20] P. M. Grundy. Mathematics and games. Eureka, 2:198—211, 1939.
[21] Robert A. Hearn and Erik D. Demaine. Games, puzzles and computation. A K Peters, 2009.
[22] Donald E. Knuth. Theory and practice. Theor. Comput. Sci., 90(1):1–15, November 1991.
[23] David Lichtenstein and Michael Sipser. Go is polynomial-space hard. J. ACM, 27(2):393–401,
1980.
[24] David Llada. The Thinkers. Quality Chess, Glasgow, UK, 1 2018.
[25] Naoki Matsumoto and Atsuki Nagao.
Feedback game on eulerian graphs.
arXiv preprint
arXiv:2002.09570, 2020.
[26] David Moews. On some combinatorial games connected with Go. PhD thesis, Citeseer, 1993.
[27] A. Monti and B. Sinaimeri. On variants of vertex geography on undirected graphs. Discrete
Applied Mathematics, 251:268–275, 2018.
[28] Ellakim H Moore.
A generalization of the game called nim. The Annals of Mathematics,
11(3):93–94, 1910.
22

[29] FL Morris. Playing disjunctive sums is polynomial space complete. International Journal of
Game Theory, 10(3-4):195–205, 1981.
[30] C. H. Papadimitriou. Computational Complexity. Addison Wesley, Reading, Massachsetts,
1994.
[31] S. Reisch. Hex ist PSPACE-vollständig. Acta Inf., 15:167–191, 1981.
[32] Gabriel Renault and Simon Schmidt. On the complexity of the misère version of three games
played on graphs. Theor. Comput. Sci., 595(C):159–167, August 2015.
[33] Thomas J. Schaefer. The complexity of satisﬁability problems. In Proceedings of the Tenth
Annual ACM Symposium on Theory of Computing, STOC ’78, page 216–226, New York, NY,
USA, 1978. Association for Computing Machinery.
[34] Thomas J. Schaefer. On the complexity of some two-person perfect-information games. Journal
of Computer and System Sciences, 16(2):185–225, 1978.
[35] A.N. Siegel. Combinatorial Game Theory. Graduate Studies in Mathematics. American Math-
ematical Society, 2013.
[36] Michael Soltys and Craig Wilson. On the complexity of computing winning strategies for ﬁnite
poset games. Theory Comput. Syst., 48:680–692, 04 2011.
[37] R. P. Sprague. Über mathematische Kampfspiele. Tôhoku Mathematical Journal, 41:438—444,
1935-36.
[38] Sripriya Venkataraman. Survey of results in impartial combinatorial games and an extension
to three-player game. PhD thesis, 2001.
[39] Jeannette M. Wing. Computational thinking. Commun. ACM, 49(3):33–35, March 2006.
[40] David Wolfe. Go endgames are pspace-hard. intelligence, 9(7):6, 2000.
[41] W A Wythoﬀ. A modiﬁcation of the game of nim. Nieuw Arch. Wisk., 7:199–202, 1907.
[42] Laura Jo Yedwab. On playing well in a sum of games. PhD thesis, Massachusetts Institute of
Technology, 1985.
[43] D. Zeilberger. Chomp, recurrences and chaos. Journal of Diﬀerence Equations and Applica-
tions, 10:1281 – 1293, 2004.
A
Winning Nim by Nim-Sum
Each Nim position consists of a collection of piles of items. Two (or multiple players) take turns
picking items (at least one) from one of the piles. Under normal play, the player who takes the last
item wins the game.
As established by Bouton [6], Nim is an exemplar sum game - each battleﬁeld game is a single
Nim-pile. Nim is polynomial-time solvable (in the number of bits encoding positions) because of
two properties: (1) the nim-sum is polynomial-time computable, and (2) the nimber of a single
Nim-pile is embarrassingly easy to calculate. Thus, the next player has a winning strategy in Nim
if and only if the bitwise-exclusive-or of the binary representation of the pile sizes is not zero.
23

This polynomial-time solution to Nim inspired Sprague-Grundy theory, which applies to all
impartial games. In optimization, related problems can often be understood through adding or
removing constraints or modifying an objective function, providing a systematic way of deriving
algorithms and intractability for using the original results [30]. With impartial games, the Sprague-
Grundy theory is a tool with similar utility.
B
Winning Undirected Geography by Matching
For completeness and our analysis we include a proof for this classical result.
Theorem B.1 (A Matching-Based Characterization). For any undirected graph G = (V, E) and
s ∈V satisfying E ̸= ∅, Undirected Geography at (G, s) is a winnable position if and only if
s is in every maximum matching of G.
Proof. For a subset S ⊂V , let GS be the graph obtained from G by removing S and all edges
incident to S. First note that s is not in every maximum matching of G if and only if the maximum-
matching size of G is equal to that of G{s}. Thus, we can eﬃciently determine this graph property
using standard polynomial-time maximum matching algorithm.
We now prove the following: Suppose G is not empty. Then:
1. If s is in every maximum matching of G, then s has a neighbor v that is not in some maximum
matching of G{s}.
2. If s is not in every maximum matching G, then either s has no neighbor in G, or every
maximum matching in G{s} contains all neighbors of s.
To see 1, consider any maximum matching M of G (say the one computed by a polynomial-time
matching algorithm). Because G ̸= ∅, M is not empty. We now prove that M \ (s, M(s))—which
clearly does not contain M(s)—is an maximum matching of G{s}. To see the maximality, let M′
be a maximum matching of Gs. If |M′| = |M|, then M′ is a maximum matching of G without
containing s, contradicting the earlier assumption. Thus, |M′| = |M| −1, and M \ (s, M(s)) is a
maximum matching in G{s},
To see 2, ﬁrst, it follows from the assumption that s is not in every maximum matching of G,
the size of maximum matching of G is equal to the size of the maximum matching of Gs. Now
suppose there exists a maximum matching M′ in G{s} that does not contain a neighbor, call it v,
of s. Then M′ ∪(s, v) is also a matching of G, which contract to the statement above.
Now, we we show that if s is in every maximum matching of S, then (G, s) is a winning
position. Let M(s) be the node for which (s, M(s)) is in matching M. We now prove that selecting
M(s) is a winning move. We showed earlier that M \ (s, M(s)) is a maximum matching of G{s}.
Furthermore, it contains every neighbor u of M(s) in G{s}. By the same argument, u is in every
maximum matching of G{s,M(s)}. The theorem then follows from a proof by induction using the
above analysis as the induction step.
C
Finding Grundy Values By Branch-And-Bound
In this section, we extend the branch-and-bound Grundy-value evaluation process to the abstract
setting as well as analyze the impact of high-degree nodes in the process.
But ﬁrst, as an illustration of what has been been established in Section 3.2, consider the
following family of fun planar Undirected Geography games:
24

Corollary C.1 (Alternation Paths Through Fully-Triangulated Planar Maps). For any fully tri-
angulated planar graph G, and a face f in G, the Grundy value of the Undirected Geography
game on the dual of G, starting at f, can be computed in polynomial time.
C.1
Nimber-Winnability Reduction: Degree of Phase Transition to Infeasibility
Our dichotomy characterization of Grundy-value computation can be extended from the concrete
Undirected Geography to an abstract nimber-winnability reduction in general impartial games,
characterized by their degrees and heights.
• Degree: For a positive integer ∆, we say that an impartial game g is a degree-∆game if g
and all positions reachable by g have at most ∆feasible moves.
• Height: For a positive integer h, we say an impartial game g is a height-h game if the height
of g’s’ game tree is at most h. We say g is a polynomially-short game if the height of its game
tree is upper bounded by a polynomial function of its input size.
For example, consider an undirected graph G = (V, E) with n nodes and maximum degree ∆,
and a node s ∈V with degree less than ∆. Then, Undirected Geography at position (G, s) is
a game with degree-(∆−1) and height-n.
Theorem C.1 (Dichotomy of Nimber-Winnability Reduction). For any degree-two, polynomially-
short impartial games, Grundy-value computation can be reduced in polynomial-time to decision of
winnability. In contrast, there exists a family of degree-three, polynomially-short impartial games for
which the winnability can be solved in polynomial time, but Grundy-value computation is PSPACE-
hard intractable.
Proof. In the branch-and-bound process at each node of the game tree encountered, we ﬁrst run a
winnability test for the position. If it is “Zero”, then return 0. Otherwise, run a winnability test
for each of their children in the game tree, and we know that one of the must be “Zero”. If both are
“Zero”, then return ∗. Otherwise, we following the winning way to determine whether the other
children is ∗or ∗2, and return ∗2 or ∗accordingly.
C.2
The Impact of Large-Degree Nodes in Branch-and-Bound
We can extend the analysis of Section 3.2 to show that a few nodes with large degrees will not stop
the polynomial-time branch-and-bound:
Theorem C.2 (A Tractable Nimber Terrain in Undirected Geography). For any constants D
and ∆, c, if G = (V, E) is an undirected graph with n = |V | nodes, in which at most c log2 n nodes
with degree in range [4, ∆+ 1], and at most D nodes with degree more than ∆, then the Grundy
value of the Undirected Geography game over G can be computed in time O(nD+c log ∆+3).
Proof. We will apply the “following the winning way” technique at all degree-two game-tree nodes
in the standard DFS-based recursive evaluation methods. (1) Each time when we evaluate a node
with degree more than ∆, the branching factor is at most n. (2) Each time when we evaluate a
node with degree in range [4, ∆+ 1], the branching factor is at most ∆(or ∆+ 1 for such starting
node). (3) Otherwise, at degree three node, the branching factor is one. If we use an O(n3) time
algorithm for maximum matching, then we can bound the total time by: O

nD · ∆c log n · n3
=
O

nD+c log ∆+3
.
25

D
Alternate Gadget Proofs: Winnability when added to ∗
In this section, we present our alternative proofs from our reduction, using ﬁgure 1. These proofs
are characterized by preserving winnability when we add the reduced game to ∗, a single move that
can be used once by either of the players.
We will refer to two players as the Foe, who makes losing moves, and the Hero, who will respond
with a winning strategy. We will exhaustively describe the Hero’s strategy to force a win.
Lemma D.1 (Wrong Way). Moving from y to any vertex d results in a value of ∗2 or ∗3. In other
words, (G′
y, d) = ∗2 or ∗3.
(This lemma was originally stated in lemma 3.1.)
Proof. Moving from y to d on our main component needs to result in a losing position when added
to ∗. By showing that it’s a losing move, we will show that there is a winning response, meaning
the sum is non-zero. That will mean that the main component cannot be equal to ∗(because
∗+ ∗= 0). That component also cannot be equal to 0 because there is a terminal move to d0.
Since there are two other possible options (f and c), it can either be ∗2 or ∗3.
On this sum, if a player, the Foe, chooses to move y to d, we need to show that this is a losing
play. The winning response, for the other player, the Hero, is to move to f. If the Foe moves to
b, then the Hero plays on the ∗. Now, no matter whether the Foe moves to a or c, the Hero can
respond by moving to a0 or c0 to win.
If the Foe takes the ∗at f instead of moving to b, then the Hero responds by moving to b,
putting them in the same situation as above.
Lemma D.2 (Right Way). Moving from d to y results in a value of ∗exactly when moving from
x to a results in ∗.
(This lemma was originally stated in lemma 3.2.)
Proof. The statement is equivalent to saying that after adding to ∗, moving d to y results in an
overall value of 0 exactly when the same is true moving x to a. We prove this winnability by giving
an odd-length sequence of moves from x to y and show that deviating from this plan is always a
losing move. We refer to the deviating player as the Foe, and their opponent as the Hero.
That sequence is: x →a →b →c →d →y. Since there are odd moves in this, the player
who moves to a is the same player that moves to y, meaning this mimics the behavior of a di-
rected Generalized Geography edge. We complete the proof by exhaustively showing that all
deviations are losing moves.
Note that any move to a terminal vertex (a0, c0, d0) is a losing move because the Hero can play
on the added ∗to make the sum zero. The other deviations are moving to f from either b or d.
Moving from d is also a terminal position (because b has already been taken) so that is a losing
move. Finally, if the Foe moves b to f, the Hero responds by playing on the ∗. Then the Foe must
move to d and the Hero can move to d0 to win.
Theorem D.1 (Complexity Separation of Winnability and Grundy Values). The Grundy value of
polynomial-time solvable Undirected Geography is PSPACE-hard to compute in planar bipar-
tite graphs of maximum degree four.
(This theorem is originally stated as theorem 3.1.)
26

Proof. This version of the proof uses the add-to-∗characterization. For this, we remark that the
P Generalized Geography positions are exactly those where the sum is equal to zero. Since
it’s always a losing move to go backwards to a d vertex, by lemma 3.1, and moving the right way
to an a vertex is a winning move exactly when moving to that y vertex is a winning move, by 3.2.
Thus players can only win by following the direction of the gadgets and not by playing on the ∗
component.
At the end, when there are no directed edge gadgets to from current vertex v that lead to a
vertex y, the value of the sum is 0 because the next player can either move to an a without a y,
to a d, or to v0. The value of just the Undirected Geography component is 0, so the opponent
can play on the ∗-component and end the game.
The winning moves in (G, s) correspond exactly to winning moves in (G′, s)+∗, so the reduction
works.
E
The Bipartite Graphs of Uno
In 2014, [11], among proving other things, included a reduction from a game of 2 player Uno called
Uncooperative Uno to Undirected Geography. Notably for this reduction, we can prove
that this reduced version is still suﬃcient to demonstrate hardness for the Grundy value.
First, let’s formally deﬁne this ruleset. In this game, there are two hands, H1 and H2, which each
consist of a set of cards. This is a perfect information game, so both players may see each other’s
hands. Each card has two attributes, a color c and a rank r. Each card then thus be represented
(c, r). A card can only be played in the center (shared) pile if the previous card matches either the
c of the current card or the r of the current card.
Demaine et al [11] then gave a simple reduction from this to Undirected Geography, which,
since it isomorphically preserves options, also preserves the Grundy value. The reduction is to
simply represent the game as a bipartite graph, where each card is represented by a vertex, and
the cards in H1 are in one part of the partition while the cards in H2 are in the other. There is an
edge between the vertices if and only if the card could be played in response to the other. Thus,
the game is simply an Undirected Geography game played on the bipartite graph.
Of course, while this is a nimber-preserving reduction, it isn’t clear that the reduction works
in the other direction, which is what we need. This is because, in addition to being bipartite,
the graph for hard instances of Undirected Geography in Grundy-value computation would
additionally need to be constrained to only have edges based on the matching color/rank principle
of Uncooperative Uno.
More formally, for a target bipartite graph to be reduced to Uncooperative Uno, we need
the graph to have the following properties:
1. Each vertex v can be given a pair of integers (a, b). We will refer to the a of v as a(v) and
similarly b(v) just means the b of v.
2. A vertex v1 in partition P1 is adjacent to a vertex v2 in P2 if and only if a(v1) = a(v2) or
b(v1) = b(v2)
Not all bipartite graphs have these properties, including the hard instance, if the directed
edges were made undirected, from Lichhtenstein’s and Sipser’s reduction. Fortunately, our edge
gadget from Theorem 3.1 (with some very slight modiﬁcations that preserves the proof and nimber)
transforms any directed bipartite graph into one has those properties. Therefore, to show hardness
for the nimber of Uncooperative Uno, we may start with Lichhtenstein’s and Sipser’s bipartite
27

graph, apply our reduction, with a slight modiﬁcation, and then reduce from this instance of
Undirected Geography to Uncooperative Uno
We will call this modiﬁed reduction, which we will discuss and motivate in the proof, as H =
(VH, EH) while the original version as it appears in the theorem will be G = (VG, EG).
Lemma E.1. In H, one can assign a pair of integers (a, b) to each vertex v such that for all v, for
each vertex u that is adjacent to v, either a(v) = a(u) or b(v) = b(u), and there exists no vertex w
adjacent to v that is in the opposite bipartite partition to v that has a(v) = a(w) or b(v) = b(w)
Proof. We will work on this proof as if it is for G, and then switch to H, which is just a small
modiﬁcation, at the end of this proof.
One strategy is, when labeling vertices in our reduction, to simply alternate between having
a(v) = a(u) and b(v) = b(u). For the ﬁrst vertex, v, we assign a to an integer (and b to be some
arbitrary number that will never appear for a vertex in the opposite partition). Then we can assign
all of the neighbors u have the property a(v) = a(u). Then all of their neighbors, w, each have a
unique b such that b(u) = b(w). Then, the neighbors of each vertex w. x each have unique a a such
that a(w) = a(x), and so on, in a breadth ﬁrst search fashion.
Note that this works whenever all of the adjacent vertices have a completely diﬀerent set of
adjacent vertices.
Similarly, there are no issues if the adjacent vertices share all of the same
neighbors, since we can just have each of the vertices in that “round” have the same a or b.
There are only two possible ways for this to break. The ﬁrst occurs when v and u are both
attempting to connect to w or a vertex already covered by the other, but the round on the path
(that is to say, whether a or b was used) doesn’t match up. This can’t happen, because our graph
is bipartite and only one of a or b will be chosen for any path to that vertex.
The other possibility is that two vertices have a non empty intersection of vertices that they are
both adjacent to, but they don’t share all the vertices they are adjacent to. This happens exactly
for two (repeated) segments in the graph from our reduction. The ﬁrst is at the diamonds b, c, d, f,
where a path moving from d or b to f and c will result in this situation. The second is for each x
and y vertices, when coming from the adjacent d and a vertices, since they each have their own a0
or d0, while sharing the x or y.
The second can be resolved by simply having the d0 or a0 use a to connect if x or y use b, or
similarly using b if they use a. This works since the previous vertex in the sequence will be in the
same partition as d0 or a0 and thus not break the rule.
The ﬁrst case is why we must use H instead of G. We will add a vertex between b and f and
one between f and d. This changes nothing about the reduction (each statement from the proof of
Theorem 3.1 and this one still holds). But now, we can apply the same solution as we did previously,
and simply choose the same component for c0 as was used to connect to c previously.
The reduction to Uncooperative Uno is now easy to complete, as the pair of labels can now
be used for the color and rank of cards, and the partitions as the players’ hands. These games are
now exactly isomorphic
28
